#pragma once
#include <iostream>
#include <initializer_list>
#include <vector>
using std::vector;
class Matrix
{
    size_t _h, _w;
    vector<vector<long double>> _mat;
public:
    Matrix(size_t h, size_t w);
    Matrix(size_t h, size_t w, vector<vector<long double>>mat);
    Matrix(size_t h, size_t w, const std::initializer_list<std::initializer_list<long double>>& il);
    Matrix(const Matrix& mat);
    void put();
    size_t height() const;
    size_t width() const;
    long double& at(size_t h, size_t w);
    const Matrix operator*(const Matrix& b);
};
Matrix RotateMat(long double);